home *** CD-ROM | disk | FTP | other *** search
- Short: Object-oriented programming language
- Author: Matthias Gietzelt
- Uploader: Andreas Gietzelt <endee@t-online.de>
- Version: 3.0
- Type: dev/c
- Email: <joachim.gietzelt@klinikum-sn.de>
- Requires: OS 3.5, well-equipped Amiga, some knowledge,
-
- Amiga Developer CD 2.1 (see below)
-
-
-
- _______ __ __ ___ _______ ___ ___ ___
- /******/ /**| /**| /***\ /******/ /***\ /***\ /***\
- /**____/ /***|/***| /*__**\ /**____/ /*__**\ /*___*\ /*__**\
- /**/ /*/|***/|*| /*/ |*| /**/ /*/ |*| /*/ \*\ /*/ |*|
- /**/___ /*/ |**/ |*| /*/__/**/ /**/___ /*/__/**/ |*| |*| /*/__/**/
- /******/ /*/ |_/ |*| /*******/ /******/ /*******/ |*| |*| /*******/
- /**____/ /*/ |*| /*______/ /**____/ /*__**__/ |*| |*| /*__**__/
- /**/ /*/ |*| /*/ /**/ /*/ \*\ |*| |*| /*/ \*\
- /**/___ /*/ |*| /*/ /**/___ /*/ \*\ \*\___/*/ /*/ \*\
- /******/ /*/ |*| /*/ /******/ /*/ \*\ \*****/ /*/ \*\
- /______/ /_/ |_| /_/ /______/ /_/ \_\ \___/ /_/ \_\
-
-
- The object-oriented programming language
-
- Available at www.aminet.de ! (Drawer: dev/c)
-
-
-
- Für die deutsche Version, bitte weiter unten lesen....
-
-
- ENGLISH:
-
-
- History
-
- 2.0 - Initial release
- ---
- 2.1 - GadTools gadgets support !!
- - reached to shrink programsize by coding the window-stuff by myself
- instead of making it by ReActor
- ---
- 2.2 - Oops..The program crashed, when a clicktab was in a test-window.
- - speed optimizations (e.g. at startup, shutdown etc.)
- - defined catalog-creation
- - C++-Code support
- - added the macro "Preferences-Menu" for Prefs-Programs
- - better & easier generated C-sourcecode
- - minor bugfixes
- ---
- 2.3 - prefs-editor rewritten
- - chooseable processortype for generated StormC-project
- - modified programming-help
- - some functionmacros rewritten
- - minor bugfixes
- ---
- 3.0 - gadgets-test routine rewritten
- - fixed bugs by showing tapedeck & colorwheel gadgets
- - fixed problems with clicktabs & page gadgets (see "clicktabsexample")
- - added function "Shutdown()" (called, when program quits)
- - added progress-bar while saving
- - added macrofunctions "Emperor_Set/GetGadgetAttrComplex()"
- (see guide for details)
-
-
- Introduction
-
- Thanks for decrunching and the will to testing the program-packet.
- This program is for "revolutioning" the software-development on Amiga.
-
- Object-oriented programminglanguage (OOP) is maybe a bit too high for that
- program, because there are "real" C/C++-sourcecodes generated and
- an external C/C++-Compiler must translate it into machine-code. In the Amiga-sphere
- there are only less applications like CanDo, Storm-Wizard and so on, but one day
- I have sawn the program "Delphi" on the PC :( ! This OOP is exclusive controlable
- in Pascal (that set's me up) and it has millions of configuration-possibilities.
- I didn't knew such things on Amiga, and so I made it by myself.
-
- I want to make parameting of the Graphical User Interface (GUI) and its macro-elements as easy as
- possible. Following standard-GUI-elements are implemented:
- * Windows
- * OS2.0 Gadgets (GadTools)
- * OS3.5 Gadgets (Reaction)
- * Requests (EasyRequest)
- * Menus (NewMenu)
- * ASL-Requests (File, Font, Screenmode)
- * Locale (Translations)
- * Function-macros, which makes programming under OS3.5 more easily
-
- With Emperor you are generating a complete C/C++-sourcecode, which only must be
- compiled by an external compiler (e.g. StormC from the developer CD2.1).
-
- Aim of this program is to assure software developer to create their programs (its sourcecode)
- by Emperor, because the making of software (opening of windows, file- and fontrequests,
- menus etc.) is often equal and is no longer copied by programmers from other sourcecodes.
- Emperor decrees about one or more macros for every GUI-element. Like the menus:
- here you must, for creating the complete Project-menu (open, close, save, print etc.) and its
- translation, (in Locale-".catalog"-file) only select the corresponding entry in the list.
- This is also possible at requests e.g. by making a QuitRequest. These are called in
- the own sourcecode as function "REQUESTNAME();".
-
- But the programm should also be for user, who never programmed before,
- and bade an easy way in the programming of AmigaOS-GUIs.
-
-
- Systemrequirements
-
- - an Amiga ;-)
- - Memory at least 24 MByte !!; recommended 64 MByte or more
- - Workbench version 3.5 or higher
- - Processor at least 68020; recommended 68060
- - Amiga Developer CD 2.1 of the HAAGE & Partner GmbH
- - C/C++-Compiler (from the developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
- - CatComp (from the developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
- - xen.font in size 8 installed in "Fonts:"-directory of the Bootdevice, :-)
-
-
- DEUTSCH:
-
-
- Die Geschichte
-
- 2.0 - Erste Veröffentlichung
- ---
- 2.1 - AmigaOS 2.0 Gadgets hinzugefügt !!
- (GadTools-Gadgets sind nun verfügbar !)
- - Programm ist durch Code-Umsetzung von ReActor nach eigenem Code geschrumpft.
- ---
- 2.2 - Programmabsturz, wenn Clicktab-Gadgets in einem Test-Fenster waren.
- - Geschwindigkeitsoptimierungen (z.B. beim Start, Ende etc.)
- - definierte Catalog-Erstellung
- - Makro "Preferences-Menü" für Einstellungs-Programme
- - C++-Quelltext Unterstützung
- - besserer & einfacherer generierter C-Quelltext
- - minimale Fehler behoben
- ---
- 2.3 - Prefs-Editor überarbeitet
- - wählbarer Prozessortyp für generierten StormC-Projekt
- - modifizierte Programmierhilfe
- - diverse Funktionsmakros überarbeitet
- - minimale Fehler behoben
- ---
- 3.0 - Gadget-Test Routine überarbeitet
- - Fehler beim Anzeigen von Tapedeck & Colorwheel Gadgets behoben
- - Probleme mit Clicktabs & Page Gadgets behoben (siehe "clicktabsexample")
- - Funktion "Shutdown()" hinzugefügt (Aufruf, bei Programmende)
- - Fortschrittsanzeige während des Speicherns
- - Makrofunktion "Emperor_Set/GetGadgetAttrComplex()" hinzugefügt
- (siehe Emperor.guide)
-
-
- Die Einführung
-
- Vielen Dank, daß Sie dieses Programm entpackt haben und ausprobieren möchten !
- Dieses Programm soll die Software-Entwicklung auf dem Amiga "revolutionieren".
-
- Objekt-orientierte Programmiersprache (OOP) ist vielleicht ein wenig
- zu hoch gegriffen, da weiterhin "echte" C/C++-Quelltexte generiert und
- durch einen externen C/C++-Compiler übersetzt werden müssen. Im Amiga-Bereich
- gibt's nur wenige Ausnahmen wie CanDo, Storm-Wizard u.a., aber irgendwann habe
- ich das Programm "Delphi" auf dem PC :( kennengelernt ! Diese OOP ist
- ausschließlich in Pascal gehalten (was mich arg störte) und erschlägt einen
- mit den Millionen Konfigurations-möglichkeiten. Ich kannte soetwas in der Art
- bisher auf dem Amiga nicht, und kurzentschlossen setzte ich mich selbst daran.
-
- Ich wollte die Parametrierung der Oberfläche und der Makro-Elemente so einfach wie
- möglich machen. Folgende Standard-Oberflächenelemente sind implementiert:
- * Fenster
- * OS2.0 Gadgets (GadTools)
- * OS3.5 Gadgets (Reaction)
- * Requester (EasyRequest)
- * Menüs (NewMenu)
- * ASL-Requester (File, Font, Screenmode)
- * Locale (Übersetzungen)
- * vorgefertigte Funktionsmakros, die das Programmieren unter OS3.5 wesentlich erleichtern.
-
- Man generiert mit Emperor einen komplett fertigen C/C++-Quelltext, der nur noch
- durch einen externen Compiler (z.B. StormC auf der Developer CD2.1) übersetzt werden muß.
-
- Ziel dieses Programms soll sein, Softwareentwickler zu überzeugen mit Emperor ihre
- Programme (deren Quelltext) zu erstellen, da die Verfahrensweise bei der Erstellung
- von Software (Öffnen von Fenstern, Datei- und Schriftauswahlrequestern, Menüs etc.)
- oft gleich ist und nicht weiter durch den Programmierer selbst mühsam aus anderen
- Quelltexten herausgefischt werden muß. Emperor verfügt für jedes Element schon
- ein oder mehrere vorgefertigte, aber veränderbare, Makros. So z.B. bei den Menüs:
- hier muß für das Projekt-Menü (Öffnen, Speichern, Drucken etc.) und dessen
- Übersetzung (für Locale - ".catalog"-Datei) nur der entsprechende Eintrag
- gewählt werden. Dies gilt auch für Requester z.B. für das QuitRequest. Diese müssen
- nur noch im eigenen Quelltext als Funktion "REQUESTERNAME();" aufgerufen werden.
-
- Das Programm soll aber auch für Amigianer sein, die noch nie programmiert haben,
- und so einen einfachen Einstieg in die Programmierung der AmigaOS-Oberfläche bieten.
-
-
- Die Systemanforderungen
-
- - einen Amiga ;-)
- - Speicher mindestens 24 MByte !!; empfohlen 64 MByte oder mehr
- - Workbench Version 3.5 oder höher
- - Prozessor mindestens 68020; empfohlen 68060
- - Amiga Developer CD 2.1 von der HAAGE & Partner GmbH
- - C/C++-Compiler (von der Developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
- - CatComp (von der Developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
- - xen.font in der Größe 8 im "Fonts:"-Verzeichnis des Bootlaufwerks, :-)
-
-
- ============================= Archive contents =============================
-
- Original Packed Ratio Date Time Name
- -------- ------- ----- --------- -------- -------------
- 26412 7375 72.0% 21-Oct-00 16:24:02 Emperor/Catalogs/deutsch/Emperor.catalog
- 34846 7469 78.5% 21-Oct-00 16:23:56 Emperor/Catalogs/Emperor.cd
- 40992 15696 61.7% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher
- 1428 842 41.0% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.info
- 1686 826 51.0% 21-Oct-00 19:14:36 Emperor/Projects/Catalogs/deutsch/AminetSearcher.catalog
- 606 342 43.5% 21-Oct-00 19:14:36 Emperor/Projects/Catalogs/deutsch/ClicktabExample.catalog
- 1006 552 45.1% 21-Oct-00 19:14:36 Emperor/Projects/Catalogs/deutsch/DevsManager.catalog
- 1074 718 33.1% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.info
- 1593 889 44.1% 21-Oct-00 19:14:36 Emperor/Projects/DevsManager.info
- 143466 12513 91.2% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.c
- 2578 856 66.7% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.cd
- 21440 2953 86.2% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.h
- 11057 2133 80.7% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.project
- 1160 491 57.6% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher.¶
- 3596 1328 63.0% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher_deutsch.ct
- 3585 968 72.9% 21-Oct-00 19:14:36 Emperor/Projects/AminetSearcher_lowlevel.h
- 20356 8524 58.1% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample
- 83964 8616 89.7% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.c
- 69 69 0.0% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.h
- 1558 840 46.0% 15-Oct-00 17:57:06 Emperor/Projects.info
- 2225 416 81.3% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.project
- 913 409 55.2% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.README!
- 1163 492 57.6% 21-Oct-00 19:14:36 Emperor/Projects/ClicktabExample.¶
- 28536 11790 58.6% 21-Oct-00 19:14:36 Emperor/Projects/DevsManager
- 93504 10082 89.2% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager.c
- 1602 585 63.4% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager.cd
- 7903 1410 82.1% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager.h
- 4936 1075 78.2% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager.project
- 1151 489 57.5% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager.¶
- 2231 899 59.7% 21-Oct-00 19:14:38 Emperor/Projects/DevsManager_deutsch.ct
- 1643 1167 28.9% 15-Oct-00 17:57:08 Emperor.info
- 11023 2953 73.2% 21-Oct-00 16:23:12 Emperor.install
- 1245 979 21.3% 21-Oct-00 16:23:12 Emperor.install.info
- 913 409 55.2% 18-Oct-00 10:51:36 Emperor/ClicktabExample.README!
- 811040 213060 73.7% 21-Oct-00 19:13:46 Emperor/Emperor
- 2692 1456 45.9% 21-Oct-00 19:13:46 Emperor/Emperor.info
- 68 58 14.7% 16-Oct-00 15:27:28 Emperor/Emperor.prefs
- 1892 1031 45.5% 16-Oct-00 15:27:30 Emperor/Emperor.prefs.info
- 9189 3849 58.1% 21-Oct-00 16:49:00 Emperor/Emperor.readme
- 1497 1039 30.5% 21-Oct-00 16:49:00 Emperor/Emperor.readme.info
- 72056 18791 73.9% 21-Oct-00 16:49:00 Emperor/Emperor_deutsch.guide
- 1497 1039 30.5% 21-Oct-00 16:49:00 Emperor/Emperor_deutsch.guide.info
- 62222 15159 75.6% 21-Oct-00 16:49:00 Emperor/Emperor_english.guide
- 1497 1036 30.7% 21-Oct-00 16:49:00 Emperor/Emperor_english.guide.info
- -------- ------- ----- --------- --------
- 1525110 363673 76.1% 21-Oct-100 19:16:58 44 files
-